package org.travelfusion.xmlclient.ri.xobject.misc;

import java.util.List;

import org.travelfusion.xmlclient.xobject.XRequestBean;

public class XFindCheapestPricesRequest extends XRequestBean {

	/** serialVersionUID. */
	private static final long serialVersionUID = 1L;
	
	public enum ResultsPolicy {
		RANDOM, CHEAPEST
	}
	
	private int maxCount;
	
	private boolean roundTrip;
	
	private String currency;
	
	private List<String> origins;
	
	private List<String> destinations;
	
	private ResultsPolicy resultsPolicy;

	/**
	 * Returns the maxCount.
	 * @return the maxCount.
	 */
	public int getMaxCount() {
		return maxCount;
	}

	/**
	 * Sets the maxCount.
	 * @param maxCount the maxCount.
	 */
	public void setMaxCount(int maxCount) {
		this.maxCount = maxCount;
	}

	/**
	 * Returns the roundTrip.
	 * @return the roundTrip.
	 */
	public boolean isRoundTrip() {
		return roundTrip;
	}

	/**
	 * Sets the roundTrip.
	 * @param roundTrip the roundTrip.
	 */
	public void setRoundTrip(boolean roundTrip) {
		this.roundTrip = roundTrip;
	}

	/**
	 * Returns the currency.
	 * @return the currency.
	 */
	public String getCurrency() {
		return currency;
	}

	/**
	 * Sets the currency.
	 * @param currency the currency.
	 */
	public void setCurrency(String currency) {
		this.currency = currency;
	}

	/**
	 * Returns the origins.
	 * @return the origins.
	 */
	public List<String> getOrigins() {
		return origins;
	}

	/**
	 * Sets the origins.
	 * @param origins the origins.
	 */
	public void setOrigins(List<String> origins) {
		this.origins = origins;
	}

	/**
	 * Returns the destinations.
	 * @return the destinations.
	 */
	public List<String> getDestinations() {
		return destinations;
	}

	/**
	 * Sets the destinations.
	 * @param destinations the destinations.
	 */
	public void setDestinations(List<String> destinations) {
		this.destinations = destinations;
	}

	/**
	 * Returns the resultsPolicy.
	 * @return the resultsPolicy.
	 */
	public ResultsPolicy getResultsPolicy() {
		return resultsPolicy;
	}

	/**
	 * Sets the resultsPolicy.
	 * @param resultsPolicy the resultsPolicy.
	 */
	public void setResultsPolicy(ResultsPolicy resultsPolicy) {
		this.resultsPolicy = resultsPolicy;
	}

}
